export default class NodeModel {
  name: string = ''
  ip: string = ''
  icon: string = ''

  constructor(data?: Partial<NodeModel>) {
    if (data) {
      Object.assign(this, data)
    }
  }

  // 创建新节点的默认值
  static createDefault(): NodeModel {
    return new NodeModel({
      name: '',
      ip: '',
      icon: '',
    })
  }

  // 更新节点数据的方法
  update(updatedData: Partial<NodeModel>) {
    Object.assign(this, updatedData)
  }

  // 克隆节点的方法
  clone(): NodeModel {
    return new NodeModel({ ...this })
  }
}
